Without limiting the general scope of the invention, its background is described in connection with computer graphics, as an example only.
In computer graphics systems, the low cost of dynamic random access memories (DRAM) has made it economical to provide a bit map or pixel map system memory. In such a bit map or pixel map memory, a color code is stored in a memory location corresponding to each pixel to be displayed. A video system is provided which recalls the color codes for each pixel and generates a raster scan video signal corresponding to the recalled color codes. Thus, the data stored in the memory determine the display by determining the color generated for each pixel (picture element) of the display.
The requirement for a natural looking display and the minimization of required memory are conflicting. In order to have a natural looking display, it is necessary to have a large number of available colors. This, in turn, necessitates a large number of bits for each pixel in order to specify the particular color desired from among a large number of possibilities. The provision of a large number of bits per pixel, however, requires a large amount of memory for storage. Since a number of bits must be provided for each pixel in the display, even a modest size display would therefore require a large memory. Thus, it is advantageous to provide some method to reduce the amount of memory needed to store the display while retaining the capability of choosing among a large number of colors.
The provision of a circuit called a color palette enables a compromise between these conflicting requirements. The color palette stores color data words which specify colors to be displayed in a form that is ready for digital-to-analog conversion directly from the color palette. The color codes stores in the memory for each pixel have a limited number of bits, thereby reducing the memory requirements. The color codes are employed to select one of a number of color registers or palette locations. Thus, the color codes do not themselves define colors, but instead, identify preselected palette locations. These color registers or palette locations each store color data words which are longer than the color codes in the pixel map memory. The number of such color registers or palette locations provided in the color palette is equal to the number of selections provided by the color codes. For example, a 4-bit color code can be used to select 2.sup.4 or 16 palette locations. The color data words can be redefined in the palette from frame to frame to provide many more colors in an ongoing sequence of frames than are present in any one frame.
For overall operational efficiency, circuitry is required which can convert the color codes stored in the graphic system memory into addresses for retrieving the color data words from the corresponding palette locations. For compatibility with a wide-range of graphics processing systems, such circuitry should be able to operate in conjunction with control signals having speeds on the order of 140 Mz. Thus, any improvements in the circuitry converting color codes to color words is advantageous.
Due to the advantages of color palette devices, systems and methods, any improvement in their implementation is advantageous in computer graphics technology.